package com.yyfax.pay.depository.dao;

import org.apache.ibatis.annotations.Param;

import com.yyfax.pay.depository.domain.FuiouUserProtocol;

public interface FuiouUserProtocolDao {

	/**
	 * 保存信息
	 * 
	 * @author buyi
	 * @date 2018-06-13 17:09:36
	 * @since v2.2.2
	 * @param record
	 * @return
	 */
	int save(FuiouUserProtocol record);

	/**
	 * 查询信息
	 * 
	 * @author buyi
	 * @date 2018-06-13 17:10:16
	 * @since v2.2.2
	 * @param merchantCode
	 * @param orderId
	 * @return
	 */
	FuiouUserProtocol get(@Param("merchantCode") String merchantCode,@Param("orderId") String orderId);

	/**
	 * 查询信息
	 * 
	 * @author buyi
	 * @date 2018-06-13 17:10:04
	 * @since v2.2.2
	 * @param busiId
	 * @return
	 */
	FuiouUserProtocol getByBusiId(String busiId);

	/**
	 * 更新交易时间
	 * 
	 * @author buyi
	 * @date 2018-06-15 15:04:17
	 * @since v2.2.2
	 * @param busiId
	 * @param txnDate
	 * @return
	 */
	int updateTxnDate(@Param("busiId") String busiId, @Param("txnDate") String txnDate);

	/**
	 * 更新订单状态
	 * 
	 * @author buyi
	 * @date 2018-06-15 15:51:26
	 * @since v2.2.2
	 * @param busiId
	 * @param destState 目标状态
	 * @param origState 源状态
	 * @param rspCode
	 * @param rspMsg
	 * @return
	 */
	int updateState(@Param("busiId") String busiId, @Param("destState") String destState, @Param("origState") String origState,
			@Param("rspCode") int rspCode, @Param("rspMsg") String rspMsg);

}